1. Field of the Invention
The present invention relates to automated speech recognition. More particularly, the invention is directed to a method for automatically confirming verbal commands issued by a user and received by an automatic speech recognition system.
2. Description of the Related Art
Two general categories of speech recognition systems are well known in the art. The first category includes speech recognition systems used for automating data acquisition ("speech data systems"). Speech data systems typically recognize speech by converting a sequential set of speech data segments vocalized by the user into a corresponding set of data elements. The data elements may then be transmitted to a secondary computer system for processing or storage. For example, many banks permit a customer calling a customer service telephone number to vocalize, for automated recognition by a speech recognition system, the customer's credit card number. Each numeral of the credit card number vocalized by the customer is a speech data segment which is recognized as a corresponding data element. The recognized credit card number is then used to retrieve information about the customer's account. Other speech data systems are used to recognize a user's speech and convert it into text, which may be stored in a secondary computer system for subsequent manipulation.
The second category of speech recognition systems includes systems used for interpreting and executing predefined verbal commands ("speech command systems"). A verbal command is typically a collection of speech data segments with an associated data processing instruction that is executable by a data processing system or another electronic device to perform a particular function. For example, an electronic clock equipped with a speech command system may have a predefined verbal command of "current time". When the user speaks the phrase "current time", the speech command system interprets the verbal command and executes a data processing instruction to inform the user of the current time. Typically, a speech command system will have several predefined verbal commands stored in a command set.
Speech command systems use similar recognition techniques to those of speech data systems; however, instead of treating and recording recognized speech data segments as pure data, a speech command system compares the set of recognized speech data segments to the verbal commands in the command set. If the recognized speech data segments match a speech data component of one of the stored verbal commands, then the speech command system executes the instruction associated with that command. Otherwise, the speech data system ignores recognized speech data segments that do not match any of the verbal commands.
Like all automatic speech recognition systems, speech command systems are subject to an error commonly known as false recognition. False recognition occurs when a speech command system incorrectly identifies a user's utterance as a particular verbal command. For example, if the user is speaking to another person while using the speech command system, one of the user's phrases may be incorrectly interpreted by the speech command system as a verbal command. In cases where a verbal command includes or activates an additional command operator, false recognition of verbal commands can have significant effects. For example, a telephone equipped with a speech command recognition system for placing calls will typically have a verbal command "call" that directs the telephone system to place a call and a command operator set of one or more names with associated telephone numbers to which the call is to be placed. Thus, to place a call to a person named Bill King using a speech recognition-equipped telephone, the user simply speaks "call Bill King" to thereby instruct the telephone to dial Bill King's telephone number. However, if the same user were to tell another person "You should call Bill King tomorrow" when the user is in close proximity to the telephone, then this speech may be incorrectly interpreted and acted upon as a verbal command to dial Bill King's telephone number, causing the user (and perhaps Bill King) inconvenience and unnecessary expense.
To address the problem of false recognition, prior art speech data systems have incorporated a required second or confirmation verbal command to confirm that a particular identified utterance by the user is in fact intended to be an actual verbal command. In the previous example, before dialing Bill King, the telephone equipment would prompt the user to confirm, by saying "yes" or "no", whether a call to Bill King should be made. While this approach provides a workable solution to the false recognition problem, it is flawed in two respects. First, if the user did in fact intend an actual verbal command to place a call, then the user is forced to go through an extra step of confirming the command even though the original command was correctly recognized. Moreover, when an utterance is falsely interpreted as a verbal command, the user's activity is unnecessarily interrupted by the speech command system request for confirmation of a verbal command that was never given.